To program the memory cells of a memory integrated circuit, electrical power is applied to the cells. The electrical power is applied to the cells at a particular voltage, and this voltage must be maintained at a relatively stable value regardless of the current demand placed on the power supply. In practice, maintaining a stable power supply voltage can be difficult. Depending on the number of memory cells being programmed at any particular time, the current demand placed on the power supply can vary substantially. For example, the maximum drain current required for programming of a typical flash memory cell is 300 microamps. For flash memories organized by 16, the required current capability of a programming power supply is 4.8 milliamps (16×300 microamps). A charge pump with a 4.8 milliamp current capacity works well for words where the majority of bits are programmed. However, a 4.8 milliamp power supply is too powerful for words where only a few bits are programmed, causing a resulting voltage overshoot on the drains of the flash cells. If many cells are being programmed to a particular logic state (for example a “zero” state), a correspondingly large current is required. If only a few cells are being programmed to the same logic state, a relatively small current is required. If a power supply supplying the programming current has insufficient current capacity, there is a tendency for programming voltage to drop. Consequently, programming may occur undesirably slowly and/or one or more memory cells may be programmed into an incorrect state.
Charge pumps are commonly used to provide programming current to flash memory cells. Charge pump efficiency is, optimized when the pump is operating at or near full capacity. Thus, if a charge pump is sized to provide proper programming for a maximum number of memory cells, efficiency will be reduced when a data word requires that only a few cells be programmed. Consequently, it would be useful to have a power supply that is efficient when controlled to maintain a desirable voltage and which supplies a proper level of current for the number of memory cells to be programmed.
In one conventional power supply, feedback control is used to stabilize output voltage. Under feedback control, the voltage or current being output from a power supply is measured and the power supply is adjusted in accordance with a deviation of the measured value from a desired value. In one conventional method, the adjustment of the power supply is effected by including capacitance at the output of the power supply and switching the power supply on and off in relation to a voltage measured on the capacitance. When the power supply is based on a charge pump, such switching on and off tends to lower the efficiency of the power supply, because capacitive charge pump efficiency is diminished during a startup period that immediately follows switching on of the charge pump. Also, switching on and off of a power supply may introduce undesirable harmonic frequencies on the output of the power supply. These harmonic frequencies may diminish data integrity and increase system power dissipation. Finally, feedback control implies a trade-off between sensitivity of control and stability. A stable system will lag demand variations resulting in some level of voltage overshoot despite the control.
Accordingly, it would be desirable to have a control method and apparatus for providing power to a memory integrated circuit device where the power is provided at desirable levels of voltage and current while minimizing the disadvantages noted above.